[INFO] fetching crate subscript 0.2.9...
[INFO] checking subscript-0.2.9 against master#af3c6e733a40e671550e0f0f5aeecaa13772ba56 for pr-74989
[INFO] extracting crate subscript 0.2.9 into /workspace/builds/worker-0/source
[INFO] validating manifest of crates.io crate subscript 0.2.9 on toolchain af3c6e733a40e671550e0f0f5aeecaa13772ba56
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate subscript 0.2.9
[INFO] finished tweaking crates.io crate subscript 0.2.9
[INFO] tweaked toml for crates.io crate subscript 0.2.9 written to /workspace/builds/worker-0/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 3d5a6ccd985abe0aeefaf3f9d3f345cb40ecab82fd0574f50496bafcf8dba8a0
[INFO] running `Command { std: "docker" "start" "-a" "3d5a6ccd985abe0aeefaf3f9d3f345cb40ecab82fd0574f50496bafcf8dba8a0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3d5a6ccd985abe0aeefaf3f9d3f345cb40ecab82fd0574f50496bafcf8dba8a0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3d5a6ccd985abe0aeefaf3f9d3f345cb40ecab82fd0574f50496bafcf8dba8a0", kill_on_drop: false }`
[INFO] [stdout] 3d5a6ccd985abe0aeefaf3f9d3f345cb40ecab82fd0574f50496bafcf8dba8a0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] b76d556bc98525338d9b8ce42905ad04f2030a2d8847539b8c4025c558e470ba
[INFO] running `Command { std: "docker" "start" "-a" "b76d556bc98525338d9b8ce42905ad04f2030a2d8847539b8c4025c558e470ba", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.40
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.68
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling bumpalo v3.4.0
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling wasm-bindgen v0.2.68
[INFO] [stderr]    Compiling serde_derive v1.0.116
[INFO] [stderr]    Compiling serde v1.0.116
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling serde_json v1.0.57
[INFO] [stderr]     Checking futures v0.1.29
[INFO] [stderr]     Checking itoa v0.4.6
[INFO] [stderr]     Checking either v1.6.0
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]    Compiling num-traits v0.2.12
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.68
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.68
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.68
[INFO] [stderr]     Checking js-sys v0.3.45
[INFO] [stderr]     Checking console_error_panic_hook v0.1.6
[INFO] [stderr]     Checking web-sys v0.3.45
[INFO] [stderr]     Checking wasm-bindgen-futures v0.3.27
[INFO] [stderr]     Checking uuid v0.7.4
[INFO] [stderr]     Checking chrono v0.4.15
[INFO] [stderr]     Checking subscript v0.2.9 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/apis.rs:89:86
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn request_animation_frame(&self, callback: impl FnOnce() + 'static) -> Closure<FnMut()> {
[INFO] [stdout]    |                                                                                         ^^^^^^^ help: use `dyn`: `dyn FnMut()`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/apis.rs:90:28
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let callback: Closure<FnMut()> = Closure::once(callback);
[INFO] [stdout]    |                               ^^^^^^^ help: use `dyn`: `dyn FnMut()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/apis.rs:97:88
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn set_timeout(&self, timeout: i32, callback: impl FnOnce() + 'static) -> Closure<FnMut()> {
[INFO] [stdout]    |                                                                                           ^^^^^^^ help: use `dyn`: `dyn FnMut()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/apis.rs:98:28
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let callback: Closure<FnMut()> = Closure::once(callback);
[INFO] [stdout]    |                               ^^^^^^^ help: use `dyn`: `dyn FnMut()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/apis.rs:106:67
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn add_event_listener(&self, event_name: &str, callback: &EventListenerApi) {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/apis.rs:111:70
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn remove_event_listener(&self, event_name: &str, callback: &EventListenerApi) {
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:24:29
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn box_clone(&self) -> Box<NodeApi>;
[INFO] [stdout]    |                                ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:30:60
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn add_event_listener(&self, event_name: &str, callback: &EventListenerApi) {
[INFO] [stdout]    |                                                               ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:35:63
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn remove_event_listener(&self, event_name: &str, callback: &EventListenerApi) {
[INFO] [stdout]    |                                                                  ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:40:33
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn append_child(&self, child: &NodeApi) {
[INFO] [stdout]    |                                    ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:45:33
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn remove_child(&self, child: &NodeApi) {
[INFO] [stdout]    |                                    ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:50:38
[INFO] [stdout]    |
[INFO] [stdout] 50 |     fn replace_child(&self, new_child: &NodeApi, old_child: &NodeApi) {
[INFO] [stdout]    |                                         ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:50:59
[INFO] [stdout]    |
[INFO] [stdout] 50 |     fn replace_child(&self, new_child: &NodeApi, old_child: &NodeApi) {
[INFO] [stdout]    |                                                              ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:55:38
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn insert_before(&self, new_child: &NodeApi, ref_child: &NodeApi) {
[INFO] [stdout]    |                                         ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:55:59
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn insert_before(&self, new_child: &NodeApi, ref_child: &NodeApi) {
[INFO] [stdout]    |                                                              ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:80:74
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn insert_adjacent_element(&self, position: AdjacentPosition, element: &ElementApi) {
[INFO] [stdout]    |                                                                             ^^^^^^^^^^ help: use `dyn`: `dyn ElementApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:136:29
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn box_clone(&self) -> Box<NodeApi> {Box::new(self.clone())}
[INFO] [stdout]     |                                ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:140:29
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn box_clone(&self) -> Box<NodeApi> {Box::new(self.clone())}
[INFO] [stdout]     |                                ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:144:29
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn box_clone(&self) -> Box<NodeApi> {Box::new(self.clone())}
[INFO] [stdout]     |                                ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:284:26
[INFO] [stdout]     |
[INFO] [stdout] 284 |     pub fn new(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings) -> Self {
[INFO] [stdout]     |                          ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:326:25
[INFO] [stdout]     |
[INFO] [stdout] 326 |     callback: Option<Rc<Fn(JsValue)>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^ help: use `dyn`: `dyn Fn(JsValue)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:330:23
[INFO] [stdout]     |
[INFO] [stdout] 330 |     pub fn new(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings) -> Self {
[INFO] [stdout]     |                          ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:341:34
[INFO] [stdout]     |
[INFO] [stdout] 341 |     pub fn new_with_fn(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings, callback: impl Fn(JsValue) + 'static) -> Self {
[INFO] [stdout]     |                                  ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/dsl.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn new_text_signal(cell: &Reactive<String>) -> Self
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<String>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/dsl.rs:60:38
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn new_toggle_control(pred: &Reactive<bool>, value: View<Msg>) -> Self {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<bool>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/dsl.rs:67:64
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn new_dynamic_control<T: 'static + PartialEq>(input: &Reactive<T>, f: impl Fn(&T) -> View<Msg> + 'static) -> Self {
[INFO] [stdout]    |                                                                ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/dsl.rs:104:41
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub fn text_cell(&mut self, value: &Reactive<String>) {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<String>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/runtime/common.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub rightward: &'a RefCell<Option<Box<browser::NodeApi>>>,
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/runtime/common.rs:25:54
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub(crate) fn get_rightward(&self) -> Option<Box<browser::NodeApi>> {
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/runtime/common.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let inner: &Option<Box<browser::NodeApi>> = &self.rightward.borrow();
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/runtime/common.rs:34:38
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub(crate) fn insert_child<'a>(new: &browser::NodeApi, env: &ElementEnv<'a>) {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/runtime/common.rs:272:58
[INFO] [stdout]     |
[INFO] [stdout] 272 |     pub(crate) fn get_first_dom_ref(&self) -> Option<Box<browser::NodeApi>> {
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/runtime/common.rs:273:81
[INFO] [stdout]     |
[INFO] [stdout] 273 |         fn check_children<Msg: 'static>(children: &Vec<Dom<Msg>>) -> Option<Box<browser::NodeApi>> {
[INFO] [stdout]     |                                                                                 ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/runtime/common.rs:274:40
[INFO] [stdout]     |
[INFO] [stdout] 274 |             let mut result: Option<Box<browser::NodeApi>> = None;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/runtime/common.rs:284:44
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 let mut result: Option<Box<browser::NodeApi>> = None;
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/extras.rs:50:42
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub(crate) fn inspect(&self, f: &mut FnMut(&Dom<Msg>)) {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:288:44
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub struct EventHandler<Msg>(pub(crate) Rc<EventHandlerImpl<Msg>>);
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventHandlerImpl<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:341:29
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub struct OnClick<Msg>(Box<Fn() -> Msg>); // click
[INFO] [stdout]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:342:33
[INFO] [stdout]     |
[INFO] [stdout] 342 | pub struct OnMouseDown<Msg>(Box<Fn()->Msg>); // mousedown
[INFO] [stdout]     |                                 ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:343:31
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub struct OnMouseUp<Msg>(Box<Fn()->Msg>); // mouseup
[INFO] [stdout]     |                               ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:344:34
[INFO] [stdout]     |
[INFO] [stdout] 344 | pub struct OnMouseEnter<Msg>(Box<Fn()->Msg>); // mouseenter
[INFO] [stdout]     |                                  ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:345:34
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub struct OnMouseLeave<Msg>(Box<Fn()->Msg>); // mouseleave
[INFO] [stdout]     |                                  ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:346:33
[INFO] [stdout]     |
[INFO] [stdout] 346 | pub struct OnMouseOver<Msg>(Box<Fn()->Msg>); // mouseover
[INFO] [stdout]     |                                 ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:347:32
[INFO] [stdout]     |
[INFO] [stdout] 347 | pub struct OnMouseOut<Msg>(Box<Fn()->Msg>); // mouseout
[INFO] [stdout]     |                                ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:351:29
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub struct OnInput<Msg>(Box<Fn(String)->Msg>); // input
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String)->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:352:29
[INFO] [stdout]     |
[INFO] [stdout] 352 | pub struct OnCheck<Msg>(Box<Fn(bool)->Msg>); // click
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(bool)->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:353:30
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct OnSubmit<Msg>(Box<Fn()->Msg>); // submit
[INFO] [stdout]     |                              ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:357:28
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub struct OnBlur<Msg>(Box<Fn()->Msg>); // blur
[INFO] [stdout]     |                            ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:358:29
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub struct OnFocus<Msg>(Box<Fn()->Msg>); // focus
[INFO] [stdout]     |                             ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:568:56
[INFO] [stdout]     |
[INFO] [stdout] 568 |     pub(crate) fn map_msg_impl<T: 'static>(self, f: Rc<Fn(Msg)->T>) -> EventHandler<T> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^ help: use `dyn`: `dyn Fn(Msg)->T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:573:11
[INFO] [stdout]     |
[INFO] [stdout] 573 |     f: Rc<Fn(T)->U>,
[INFO] [stdout]     |           ^^^^^^^^ help: use `dyn`: `dyn Fn(T)->U`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:602:47
[INFO] [stdout]     |
[INFO] [stdout] 602 | pub struct DynamicProducer<Msg>(pub(crate) Rc<Fn()->Option<View<Msg>>>);
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Option<View<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:25:25
[INFO] [stdout]    |
[INFO] [stdout] 25 |     signal_sub: Vec<Box<Fn()->Option<Msg>>>,
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Option<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |     mail_subs: Vec<Box<Fn(Rc<Any>)->Option<Msg>>>,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc<Any>)->Option<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 |     mail_subs: Vec<Box<Fn(Rc<Any>)->Option<Msg>>>,
[INFO] [stdout]    |                              ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let f: Box<Fn() -> Option<Msg> + 'static> = Box::new({
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Option<Msg> + 'static`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:66:20
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let f: Box<Fn(Rc<Any>)->Option<Msg>> = Box::new({
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc<Any>)->Option<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:66:26
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let f: Box<Fn(Rc<Any>)->Option<Msg>> = Box::new({
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:67:33
[INFO] [stdout]    |
[INFO] [stdout] 67 |             move |something: Rc<Any>| -> Option<Msg> {
[INFO] [stdout]    |                                 ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/program_sys/effect/nav.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub struct UrlParser<T>(pub Rc<Fn(Url)->T>);
[INFO] [stdout]     |                                ^^^^^^^^^^ help: use `dyn`: `dyn Fn(Url)->T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/instances.rs:22:46
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub(crate) struct SubComponent(pub(crate) Rc<SubComponentImpl>);
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SubComponentImpl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/instances.rs:99:45
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub(crate) struct SubProcess(pub(crate) Box<SubProcessImpl>);
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn SubProcessImpl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/mod.rs:32:31
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let inner: Option<Box<ProgramImpl>> = cell.replace(None);
[INFO] [stdout]    |                               ^^^^^^^^^^^ help: use `dyn`: `dyn ProgramImpl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/mod.rs:70:56
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub(crate) static ROOT_PROCESS: RefCell<Option<Box<ProgramImpl>>> = {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^ help: use `dyn`: `dyn ProgramImpl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/program_sys/mod.rs:166:14
[INFO] [stdout]     |
[INFO] [stdout] 166 |     init: Rc<Fn(Option<Model>)-> Model>,
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Option<Model>)-> Model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/program_sys/mod.rs:167:16
[INFO] [stdout]     |
[INFO] [stdout] 167 |     update: Rc<Fn(&mut Model, Msg)>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Model, Msg)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/program_sys/mod.rs:168:14
[INFO] [stdout]     |
[INFO] [stdout] 168 |     view: Rc<Fn(&Model) -> View<Msg>>,
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Model) -> View<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/signal.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn zip<U: 'static>(&self, other: &Reactive<U>) -> Formula<(T, U)>
[INFO] [stdout]    |                                           ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<U>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/signal.rs:77:43
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn zip<U: 'static>(&self, other: &Reactive<U>) -> Formula<(T, U)>
[INFO] [stdout]    |                                           ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<U>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) struct ViewVecObserver<Msg>(Rc<ViewVecObserverApi<Msg>>);
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ViewVecObserverApi<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn for_each_dom_node(&self, f: &mut FnMut(&Dom<Msg>));
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn build(&self, f: &Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>);
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:43:32
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub(crate) update: &'a mut FnMut(&mut Vec<ViewItem<Msg>>),
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Vec<ViewItem<Msg>>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub(crate) removed: &'a mut FnMut(Dom<Msg>),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:70:52
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub(crate) fn for_each_dom_node(&self, f: &mut FnMut(&Dom<Msg>)) {
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:74:36
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub(crate) fn build(&self, f: &Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>) {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:147:41
[INFO] [stdout]     |
[INFO] [stdout] 147 |     fn for_each_dom_node(&self, f: &mut FnMut(&Dom<Msg>)) {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:163:25
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn build(&self, f: &Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>) {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:246:46
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub(crate) fn map_segment(&self, f: &mut FnMut(SegmentValue<Msg>)->SegmentValue<Msg>) {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(SegmentValue<Msg>)->SegmentValue<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:275:22
[INFO] [stdout]     |
[INFO] [stdout] 275 |     if_view: &'a mut FnMut(&mut Vec<View<Msg>>),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Vec<View<Msg>>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:276:21
[INFO] [stdout]     |
[INFO] [stdout] 276 |     if_dom: &'a mut FnMut(&mut DomSegment<Msg>),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DomSegment<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:313:38
[INFO] [stdout]     |
[INFO] [stdout] 313 | pub(crate) struct ToView<T, Msg>(Box<Fn(&T)->View<Msg>>);
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&T)->View<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec.rs:30:52
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub(crate) ops_subscribers: Rc<RefCell<Vec<Box<VecOpObserver<T>>>>>,
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn VecOpObserver<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec.rs:31:55
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) change_subscribers: Rc<RefCell<Vec<Box<FnMut(&Vec<T>)>>>>,
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Vec<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec.rs:101:24
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let getter: Rc<Fn()->Rc<U>> = Rc::new({
[INFO] [stdout]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<U>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec.rs:135:24
[INFO] [stdout]     |
[INFO] [stdout] 135 |         let getter: Rc<Fn()->Rc<Vec<U>>> = Rc::new({
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<Vec<U>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) struct ViewVecObserver<Msg>(Rc<ViewVecObserverApi<Msg>>);
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ViewVecObserverApi<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn for_each_dom_node(&self, f: &mut FnMut(&Dom<Msg>));
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn build(&self, f: &Fn(View<Msg>)->Vec<Dom<Msg>>);
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(View<Msg>)->Vec<Dom<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:43:33
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub(crate) current: &'a mut FnMut(&mut ViewItem<Msg>),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut ViewItem<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub(crate) removed: &'a mut FnMut(Dom<Msg>),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:48:32
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub(crate) update: &'a mut FnMut(&mut ViewItem<Msg>),
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut ViewItem<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:49:33
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub(crate) removed: &'a mut FnMut(Dom<Msg>),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/map/view_observer.rs:280:22
[INFO] [stdout]     |
[INFO] [stdout] 280 |     if_view: &'a mut FnMut(&mut HashMap<K, View<Msg>>),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut HashMap<K, View<Msg>>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/map/view_observer.rs:281:21
[INFO] [stdout]     |
[INFO] [stdout] 281 |     if_dom: &'a mut FnMut(&mut DomSegment<K, Msg>),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DomSegment<K, Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/map/view_observer.rs:318:41
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub(crate) struct ToView<K, V, Msg>(Box<Fn(&K, &V)->View<Msg>>);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&K, &V)->View<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map.rs:31:51
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) op_subscribers: Rc<RefCell<Vec<Box<MapOpObserver<K, V>>>>>,
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MapOpObserver<K, V>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map.rs:32:55
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub(crate) change_subscribers: Rc<RefCell<Vec<Box<FnMut(&HashMap<K, V>)>>>>,
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&HashMap<K, V>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map.rs:80:24
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let getter: Rc<Fn()->Rc<T>> = Rc::new({
[INFO] [stdout]    |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 | type Subscribers<T> = RefCell<Vec<Box<FnMut(&Rc<T>)>>>;
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Rc<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:35:78
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub(crate) fn empty_named_subscribers<T>() -> Rc<RefCell<HashMap<String, Box<FnMut(&Rc<T>)>>>> {
[INFO] [stdout]    |                                                                              ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Rc<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:41:27
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub(crate) getter: Rc<Fn()->Rc<T>>,
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:42:34
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub(crate) setter: Option<Rc<Fn(Rc<T>)>>,
[INFO] [stdout]    |                                  ^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:65:24
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let getter: Rc<Fn()->Rc<T>> = Rc::new({
[INFO] [stdout]    |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:78:24
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let getter: Rc<Fn()->Rc<T>> = Rc::new({
[INFO] [stdout]    |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:84:31
[INFO] [stdout]    |
[INFO] [stdout] 84 |         let setter: Option<Rc<Fn(Rc<T>)>> = Some(Rc::new({
[INFO] [stdout]    |                               ^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/value.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let getter: Rc<Fn()->Rc<U>> = Rc::new({
[INFO] [stdout]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<U>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/value.rs:183:24
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let getter: Rc<Fn()->Rc<(T, U)>> = Rc::new({
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<(T, U)>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/apis.rs:89:86
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn request_animation_frame(&self, callback: impl FnOnce() + 'static) -> Closure<FnMut()> {
[INFO] [stdout]    |                                                                                         ^^^^^^^ help: use `dyn`: `dyn FnMut()`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/apis.rs:90:28
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let callback: Closure<FnMut()> = Closure::once(callback);
[INFO] [stdout]    |                               ^^^^^^^ help: use `dyn`: `dyn FnMut()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/apis.rs:97:88
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn set_timeout(&self, timeout: i32, callback: impl FnOnce() + 'static) -> Closure<FnMut()> {
[INFO] [stdout]    |                                                                                           ^^^^^^^ help: use `dyn`: `dyn FnMut()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/apis.rs:98:28
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let callback: Closure<FnMut()> = Closure::once(callback);
[INFO] [stdout]    |                               ^^^^^^^ help: use `dyn`: `dyn FnMut()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/apis.rs:106:67
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn add_event_listener(&self, event_name: &str, callback: &EventListenerApi) {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/apis.rs:111:70
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn remove_event_listener(&self, event_name: &str, callback: &EventListenerApi) {
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:24:29
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn box_clone(&self) -> Box<NodeApi>;
[INFO] [stdout]    |                                ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:30:60
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn add_event_listener(&self, event_name: &str, callback: &EventListenerApi) {
[INFO] [stdout]    |                                                               ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:35:63
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn remove_event_listener(&self, event_name: &str, callback: &EventListenerApi) {
[INFO] [stdout]    |                                                                  ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:40:33
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn append_child(&self, child: &NodeApi) {
[INFO] [stdout]    |                                    ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:45:33
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn remove_child(&self, child: &NodeApi) {
[INFO] [stdout]    |                                    ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:50:38
[INFO] [stdout]    |
[INFO] [stdout] 50 |     fn replace_child(&self, new_child: &NodeApi, old_child: &NodeApi) {
[INFO] [stdout]    |                                         ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:50:59
[INFO] [stdout]    |
[INFO] [stdout] 50 |     fn replace_child(&self, new_child: &NodeApi, old_child: &NodeApi) {
[INFO] [stdout]    |                                                              ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:55:38
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn insert_before(&self, new_child: &NodeApi, ref_child: &NodeApi) {
[INFO] [stdout]    |                                         ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:55:59
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn insert_before(&self, new_child: &NodeApi, ref_child: &NodeApi) {
[INFO] [stdout]    |                                                              ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/backend/browser/display.rs:80:74
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn insert_adjacent_element(&self, position: AdjacentPosition, element: &ElementApi) {
[INFO] [stdout]    |                                                                             ^^^^^^^^^^ help: use `dyn`: `dyn ElementApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:136:29
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn box_clone(&self) -> Box<NodeApi> {Box::new(self.clone())}
[INFO] [stdout]     |                                ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:140:29
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn box_clone(&self) -> Box<NodeApi> {Box::new(self.clone())}
[INFO] [stdout]     |                                ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:144:29
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn box_clone(&self) -> Box<NodeApi> {Box::new(self.clone())}
[INFO] [stdout]     |                                ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:284:26
[INFO] [stdout]     |
[INFO] [stdout] 284 |     pub fn new(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings) -> Self {
[INFO] [stdout]     |                          ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:326:25
[INFO] [stdout]     |
[INFO] [stdout] 326 |     callback: Option<Rc<Fn(JsValue)>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^ help: use `dyn`: `dyn Fn(JsValue)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:330:23
[INFO] [stdout]     |
[INFO] [stdout] 330 |     pub fn new(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings) -> Self {
[INFO] [stdout]     |                          ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/backend/browser/display.rs:341:34
[INFO] [stdout]     |
[INFO] [stdout] 341 |     pub fn new_with_fn(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings, callback: impl Fn(JsValue) + 'static) -> Self {
[INFO] [stdout]     |                                  ^^^^^^^ help: use `dyn`: `dyn NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/dsl.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn new_text_signal(cell: &Reactive<String>) -> Self
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<String>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/dsl.rs:60:38
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn new_toggle_control(pred: &Reactive<bool>, value: View<Msg>) -> Self {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<bool>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/dsl.rs:67:64
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn new_dynamic_control<T: 'static + PartialEq>(input: &Reactive<T>, f: impl Fn(&T) -> View<Msg> + 'static) -> Self {
[INFO] [stdout]    |                                                                ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/dsl.rs:104:41
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub fn text_cell(&mut self, value: &Reactive<String>) {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<String>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/runtime/common.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub rightward: &'a RefCell<Option<Box<browser::NodeApi>>>,
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/runtime/common.rs:25:54
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub(crate) fn get_rightward(&self) -> Option<Box<browser::NodeApi>> {
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/runtime/common.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let inner: &Option<Box<browser::NodeApi>> = &self.rightward.borrow();
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/runtime/common.rs:34:38
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub(crate) fn insert_child<'a>(new: &browser::NodeApi, env: &ElementEnv<'a>) {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/runtime/common.rs:272:58
[INFO] [stdout]     |
[INFO] [stdout] 272 |     pub(crate) fn get_first_dom_ref(&self) -> Option<Box<browser::NodeApi>> {
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/runtime/common.rs:273:81
[INFO] [stdout]     |
[INFO] [stdout] 273 |         fn check_children<Msg: 'static>(children: &Vec<Dom<Msg>>) -> Option<Box<browser::NodeApi>> {
[INFO] [stdout]     |                                                                                 ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/runtime/common.rs:274:40
[INFO] [stdout]     |
[INFO] [stdout] 274 |             let mut result: Option<Box<browser::NodeApi>> = None;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/runtime/common.rs:284:44
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 let mut result: Option<Box<browser::NodeApi>> = None;
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/view_sys/extras.rs:50:42
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub(crate) fn inspect(&self, f: &mut FnMut(&Dom<Msg>)) {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:288:44
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub struct EventHandler<Msg>(pub(crate) Rc<EventHandlerImpl<Msg>>);
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventHandlerImpl<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:341:29
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub struct OnClick<Msg>(Box<Fn() -> Msg>); // click
[INFO] [stdout]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:342:33
[INFO] [stdout]     |
[INFO] [stdout] 342 | pub struct OnMouseDown<Msg>(Box<Fn()->Msg>); // mousedown
[INFO] [stdout]     |                                 ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:343:31
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub struct OnMouseUp<Msg>(Box<Fn()->Msg>); // mouseup
[INFO] [stdout]     |                               ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:344:34
[INFO] [stdout]     |
[INFO] [stdout] 344 | pub struct OnMouseEnter<Msg>(Box<Fn()->Msg>); // mouseenter
[INFO] [stdout]     |                                  ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:345:34
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub struct OnMouseLeave<Msg>(Box<Fn()->Msg>); // mouseleave
[INFO] [stdout]     |                                  ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:346:33
[INFO] [stdout]     |
[INFO] [stdout] 346 | pub struct OnMouseOver<Msg>(Box<Fn()->Msg>); // mouseover
[INFO] [stdout]     |                                 ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:347:32
[INFO] [stdout]     |
[INFO] [stdout] 347 | pub struct OnMouseOut<Msg>(Box<Fn()->Msg>); // mouseout
[INFO] [stdout]     |                                ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:351:29
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub struct OnInput<Msg>(Box<Fn(String)->Msg>); // input
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String)->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:352:29
[INFO] [stdout]     |
[INFO] [stdout] 352 | pub struct OnCheck<Msg>(Box<Fn(bool)->Msg>); // click
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(bool)->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:353:30
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct OnSubmit<Msg>(Box<Fn()->Msg>); // submit
[INFO] [stdout]     |                              ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:357:28
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub struct OnBlur<Msg>(Box<Fn()->Msg>); // blur
[INFO] [stdout]     |                            ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:358:29
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub struct OnFocus<Msg>(Box<Fn()->Msg>); // focus
[INFO] [stdout]     |                             ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:568:56
[INFO] [stdout]     |
[INFO] [stdout] 568 |     pub(crate) fn map_msg_impl<T: 'static>(self, f: Rc<Fn(Msg)->T>) -> EventHandler<T> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^ help: use `dyn`: `dyn Fn(Msg)->T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:573:11
[INFO] [stdout]     |
[INFO] [stdout] 573 |     f: Rc<Fn(T)->U>,
[INFO] [stdout]     |           ^^^^^^^^ help: use `dyn`: `dyn Fn(T)->U`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/view_sys/shared.rs:602:47
[INFO] [stdout]     |
[INFO] [stdout] 602 | pub struct DynamicProducer<Msg>(pub(crate) Rc<Fn()->Option<View<Msg>>>);
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Option<View<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:25:25
[INFO] [stdout]    |
[INFO] [stdout] 25 |     signal_sub: Vec<Box<Fn()->Option<Msg>>>,
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Option<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |     mail_subs: Vec<Box<Fn(Rc<Any>)->Option<Msg>>>,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc<Any>)->Option<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 |     mail_subs: Vec<Box<Fn(Rc<Any>)->Option<Msg>>>,
[INFO] [stdout]    |                              ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let f: Box<Fn() -> Option<Msg> + 'static> = Box::new({
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Option<Msg> + 'static`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:66:20
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let f: Box<Fn(Rc<Any>)->Option<Msg>> = Box::new({
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc<Any>)->Option<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:66:26
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let f: Box<Fn(Rc<Any>)->Option<Msg>> = Box::new({
[INFO] [stdout]    |                          ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/effect/sub.rs:67:33
[INFO] [stdout]    |
[INFO] [stdout] 67 |             move |something: Rc<Any>| -> Option<Msg> {
[INFO] [stdout]    |                                 ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/program_sys/effect/nav.rs:113:32
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub struct UrlParser<T>(pub Rc<Fn(Url)->T>);
[INFO] [stdout]     |                                ^^^^^^^^^^ help: use `dyn`: `dyn Fn(Url)->T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/instances.rs:22:46
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub(crate) struct SubComponent(pub(crate) Rc<SubComponentImpl>);
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SubComponentImpl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/instances.rs:99:45
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub(crate) struct SubProcess(pub(crate) Box<SubProcessImpl>);
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn SubProcessImpl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/mod.rs:32:31
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let inner: Option<Box<ProgramImpl>> = cell.replace(None);
[INFO] [stdout]    |                               ^^^^^^^^^^^ help: use `dyn`: `dyn ProgramImpl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/program_sys/mod.rs:70:56
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub(crate) static ROOT_PROCESS: RefCell<Option<Box<ProgramImpl>>> = {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^ help: use `dyn`: `dyn ProgramImpl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/program_sys/mod.rs:166:14
[INFO] [stdout]     |
[INFO] [stdout] 166 |     init: Rc<Fn(Option<Model>)-> Model>,
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Option<Model>)-> Model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/program_sys/mod.rs:167:16
[INFO] [stdout]     |
[INFO] [stdout] 167 |     update: Rc<Fn(&mut Model, Msg)>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Model, Msg)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/program_sys/mod.rs:168:14
[INFO] [stdout]     |
[INFO] [stdout] 168 |     view: Rc<Fn(&Model) -> View<Msg>>,
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Model) -> View<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/signal.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn zip<U: 'static>(&self, other: &Reactive<U>) -> Formula<(T, U)>
[INFO] [stdout]    |                                           ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<U>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/signal.rs:77:43
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn zip<U: 'static>(&self, other: &Reactive<U>) -> Formula<(T, U)>
[INFO] [stdout]    |                                           ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive<U>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) struct ViewVecObserver<Msg>(Rc<ViewVecObserverApi<Msg>>);
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ViewVecObserverApi<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn for_each_dom_node(&self, f: &mut FnMut(&Dom<Msg>));
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn build(&self, f: &Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>);
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:43:32
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub(crate) update: &'a mut FnMut(&mut Vec<ViewItem<Msg>>),
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Vec<ViewItem<Msg>>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub(crate) removed: &'a mut FnMut(Dom<Msg>),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:70:52
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub(crate) fn for_each_dom_node(&self, f: &mut FnMut(&Dom<Msg>)) {
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec/view_observer.rs:74:36
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub(crate) fn build(&self, f: &Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>) {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:147:41
[INFO] [stdout]     |
[INFO] [stdout] 147 |     fn for_each_dom_node(&self, f: &mut FnMut(&Dom<Msg>)) {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:163:25
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn build(&self, f: &Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>) {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec<View<Msg>>)->Vec<Dom<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:246:46
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub(crate) fn map_segment(&self, f: &mut FnMut(SegmentValue<Msg>)->SegmentValue<Msg>) {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(SegmentValue<Msg>)->SegmentValue<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:275:22
[INFO] [stdout]     |
[INFO] [stdout] 275 |     if_view: &'a mut FnMut(&mut Vec<View<Msg>>),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Vec<View<Msg>>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:276:21
[INFO] [stdout]     |
[INFO] [stdout] 276 |     if_dom: &'a mut FnMut(&mut DomSegment<Msg>),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DomSegment<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec/view_observer.rs:313:38
[INFO] [stdout]     |
[INFO] [stdout] 313 | pub(crate) struct ToView<T, Msg>(Box<Fn(&T)->View<Msg>>);
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&T)->View<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec.rs:30:52
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub(crate) ops_subscribers: Rc<RefCell<Vec<Box<VecOpObserver<T>>>>>,
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn VecOpObserver<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/vec.rs:31:55
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) change_subscribers: Rc<RefCell<Vec<Box<FnMut(&Vec<T>)>>>>,
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Vec<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec.rs:101:24
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let getter: Rc<Fn()->Rc<U>> = Rc::new({
[INFO] [stdout]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<U>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/vec.rs:135:24
[INFO] [stdout]     |
[INFO] [stdout] 135 |         let getter: Rc<Fn()->Rc<Vec<U>>> = Rc::new({
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<Vec<U>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) struct ViewVecObserver<Msg>(Rc<ViewVecObserverApi<Msg>>);
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ViewVecObserverApi<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn for_each_dom_node(&self, f: &mut FnMut(&Dom<Msg>));
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn build(&self, f: &Fn(View<Msg>)->Vec<Dom<Msg>>);
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(View<Msg>)->Vec<Dom<Msg>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:43:33
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub(crate) current: &'a mut FnMut(&mut ViewItem<Msg>),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut ViewItem<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub(crate) removed: &'a mut FnMut(Dom<Msg>),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:48:32
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub(crate) update: &'a mut FnMut(&mut ViewItem<Msg>),
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut ViewItem<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map/view_observer.rs:49:33
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub(crate) removed: &'a mut FnMut(Dom<Msg>),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom<Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/map/view_observer.rs:280:22
[INFO] [stdout]     |
[INFO] [stdout] 280 |     if_view: &'a mut FnMut(&mut HashMap<K, View<Msg>>),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut HashMap<K, View<Msg>>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/map/view_observer.rs:281:21
[INFO] [stdout]     |
[INFO] [stdout] 281 |     if_dom: &'a mut FnMut(&mut DomSegment<K, Msg>),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DomSegment<K, Msg>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/map/view_observer.rs:318:41
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub(crate) struct ToView<K, V, Msg>(Box<Fn(&K, &V)->View<Msg>>);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&K, &V)->View<Msg>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map.rs:31:51
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) op_subscribers: Rc<RefCell<Vec<Box<MapOpObserver<K, V>>>>>,
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MapOpObserver<K, V>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map.rs:32:55
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub(crate) change_subscribers: Rc<RefCell<Vec<Box<FnMut(&HashMap<K, V>)>>>>,
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&HashMap<K, V>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/map.rs:80:24
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let getter: Rc<Fn()->Rc<T>> = Rc::new({
[INFO] [stdout]    |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 | type Subscribers<T> = RefCell<Vec<Box<FnMut(&Rc<T>)>>>;
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Rc<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:35:78
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub(crate) fn empty_named_subscribers<T>() -> Rc<RefCell<HashMap<String, Box<FnMut(&Rc<T>)>>>> {
[INFO] [stdout]    |                                                                              ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Rc<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:41:27
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub(crate) getter: Rc<Fn()->Rc<T>>,
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:42:34
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub(crate) setter: Option<Rc<Fn(Rc<T>)>>,
[INFO] [stdout]    |                                  ^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:65:24
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let getter: Rc<Fn()->Rc<T>> = Rc::new({
[INFO] [stdout]    |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:78:24
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let getter: Rc<Fn()->Rc<T>> = Rc::new({
[INFO] [stdout]    |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<T>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/reactive_sys/value.rs:84:31
[INFO] [stdout]    |
[INFO] [stdout] 84 |         let setter: Option<Rc<Fn(Rc<T>)>> = Some(Rc::new({
[INFO] [stdout]    |                               ^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc<T>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/value.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let getter: Rc<Fn()->Rc<U>> = Rc::new({
[INFO] [stdout]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<U>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/reactive_sys/value.rs:183:24
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let getter: Rc<Fn()->Rc<(T, U)>> = Rc::new({
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<(T, U)>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/view_sys/runtime/css/hashids.rs:37:30
[INFO] [stdout]    |
[INFO] [stdout] 37 |         write!(f, "{}", self.description())
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/view_sys/runtime/css/hashids.rs:58:30
[INFO] [stdout]    |
[INFO] [stdout] 58 |         write!(f, "{}", self.description())
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/view_sys/runtime/css/hashids.rs:37:30
[INFO] [stdout]    |
[INFO] [stdout] 37 |         write!(f, "{}", self.description())
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/view_sys/runtime/css/hashids.rs:58:30
[INFO] [stdout]    |
[INFO] [stdout] 58 |         write!(f, "{}", self.description())
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 110 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 110 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1m 02s
[INFO] running `Command { std: "docker" "inspect" "b76d556bc98525338d9b8ce42905ad04f2030a2d8847539b8c4025c558e470ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b76d556bc98525338d9b8ce42905ad04f2030a2d8847539b8c4025c558e470ba", kill_on_drop: false }`
[INFO] [stdout] b76d556bc98525338d9b8ce42905ad04f2030a2d8847539b8c4025c558e470ba
